#include <bits/stdc++.h>
using namespace std;

int a[100005];
int main() {
  long long n, c;
  cin >> n >> c;
  for (int i = 1; i <= n; i++) {
    cin >> a[i];
  }

  long long minp = a[1];
  long long ans = a[1];

// 本想用二维数组，计算每天价格在若干天后的成本，但时间复杂度太高，遂作罢
// 每份的饺子冷冻成本都是c ，又没有保质期， 只要选择当前最低成本+c即可。 
  for (int i = 2; i <= n; i++) {
    minp = min(minp + c, (long long)a[i]);
    ans += minp;
  }
  cout << ans << endl;
  return 0;
}
